package almacenes.modelo.entidad;
//Generated 23-feb-2012 10:07:23 by Hibernate Tools 3.4.0.CR1


import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.UniqueConstraint;

import org.hibernate.annotations.Cascade;

/**
* Inspeccion generated by hbm2java
*/
@Entity
@Table(name="INSPECCION"
 , uniqueConstraints = @UniqueConstraint(columnNames="COD_INSPECCION_BBVA") 
)
public class Inspeccion  implements java.io.Serializable {

  private static final long serialVersionUID = 1L;
  private int idInspeccion;
  private String codInspeccionBbva;
  private byte idEstadoInspec;
  private Long idProveedor;
  private String usuReg;
  private Date fecReg;
  private String usuAct;
  private Date fecAct;
  private Short idDepartamento;
  private Integer idCampanha;
  private Integer idPremio;
  private Integer idFeria;
  private Integer idUsuarioGestor;
  private List<Diferencia> diferencias = new ArrayList<Diferencia>();
  private List<InspeccionDetalle> inspeccionDetalles = new ArrayList<InspeccionDetalle>();

 public Inspeccion() {
 }

/*	@Transient
	public String getEstadoDesc() {
		if(getEstado()!=null && !getEstado().equals("")){
			if(getEstado().equals("A")){
				estadoDesc="Activado";
			}else if(getEstado().equals("D")){
				estadoDesc="Desactivado";
			}
		}
		return estadoDesc;
	}*/	
 public Inspeccion(int idInspeccion, byte idEstadoInspec) {
     this.idInspeccion = idInspeccion;
     this.idEstadoInspec = idEstadoInspec;
 }
 public Inspeccion(int idInspeccion, String codInspeccionBbva, byte idEstadoInspec, Long idProveedor, String usuReg, Date fecReg, String usuAct, Date fecAct, Short idDepartamento, Integer idCampanha, Integer idPremio, Integer idFeria, Integer idUsuarioGestor, List<Diferencia> diferencias, List<InspeccionDetalle> inspeccionDetalles) {
    this.idInspeccion = idInspeccion;
    this.codInspeccionBbva = codInspeccionBbva;
    this.idEstadoInspec = idEstadoInspec;
    this.idProveedor = idProveedor;
    this.usuReg = usuReg;
    this.fecReg = fecReg;
    this.usuAct = usuAct;
    this.fecAct = fecAct;
    this.idDepartamento = idDepartamento;
    this.idCampanha = idCampanha;
    this.idPremio = idPremio;
    this.idFeria = idFeria;
    this.idUsuarioGestor = idUsuarioGestor;
    this.diferencias = diferencias;
    this.inspeccionDetalles = inspeccionDetalles;
 }

 @Id 
 @Column(name="ID_INSPECCION", unique=true, nullable=false, precision=6, scale=0)
 @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "SQ_INSPECCION")
 @SequenceGenerator(name = "SQ_INSPECCION", sequenceName = "SQ_INSPECCION",allocationSize=1)
 public int getIdInspeccion() {
     return this.idInspeccion;
 }
 
 public void setIdInspeccion(int idInspeccion) {
     this.idInspeccion = idInspeccion;
 }

 
 @Column(name="COD_INSPECCION_BBVA", unique=true, length=12)
 public String getCodInspeccionBbva() {
     return this.codInspeccionBbva;
 }
 
 public void setCodInspeccionBbva(String codInspeccionBbva) {
     this.codInspeccionBbva = codInspeccionBbva;
 }

 
 @Column(name="ID_ESTADO_INSPEC", nullable=false, precision=2, scale=0)
 public byte getIdEstadoInspec() {
     return this.idEstadoInspec;
 }
 
 public void setIdEstadoInspec(byte idEstadoInspec) {
     this.idEstadoInspec = idEstadoInspec;
 }

 
 @Column(name="ID_PROVEEDOR", precision=10, scale=0)
 public Long getIdProveedor() {
     return this.idProveedor;
 }
 
 public void setIdProveedor(Long idProveedor) {
     this.idProveedor = idProveedor;
 }

 
 @Column(name="USU_REG", length=10)
 public String getUsuReg() {
     return this.usuReg;
 }
 
 public void setUsuReg(String usuReg) {
     this.usuReg = usuReg;
 }

 @Temporal(TemporalType.DATE)
 @Column(name="FEC_REG", length=7)
 public Date getFecReg() {
     return this.fecReg;
 }
 
 public void setFecReg(Date fecReg) {
     this.fecReg = fecReg;
 }

 
 @Column(name="USU_ACT", length=10)
 public String getUsuAct() {
     return this.usuAct;
 }
 
 public void setUsuAct(String usuAct) {
     this.usuAct = usuAct;
 }

 @Temporal(TemporalType.DATE)
 @Column(name="FEC_ACT", length=7)
 public Date getFecAct() {
     return this.fecAct;
 }
 
 public void setFecAct(Date fecAct) {
     this.fecAct = fecAct;
 }

 
 @Column(name="ID_DEPARTAMENTO", precision=4, scale=0)
 public Short getIdDepartamento() {
     return this.idDepartamento;
 }
 
 public void setIdDepartamento(Short idDepartamento) {
     this.idDepartamento = idDepartamento;
 }

 
 @Column(name="ID_CAMPANHA", precision=8, scale=0)
 public Integer getIdCampanha() {
     return this.idCampanha;
 }
 
 public void setIdCampanha(Integer idCampanha) {
     this.idCampanha = idCampanha;
 }

 
 @Column(name="ID_PREMIO", precision=8, scale=0)
 public Integer getIdPremio() {
     return this.idPremio;
 }
 
 public void setIdPremio(Integer idPremio) {
     this.idPremio = idPremio;
 }

 
 @Column(name="ID_FERIA", precision=8, scale=0)
 public Integer getIdFeria() {
     return this.idFeria;
 }
 
 public void setIdFeria(Integer idFeria) {
     this.idFeria = idFeria;
 }

 
 @Column(name="ID_USUARIO_GESTOR", precision=8, scale=0)
 public Integer getIdUsuarioGestor() {
     return this.idUsuarioGestor;
 }
 
 public void setIdUsuarioGestor(Integer idUsuarioGestor) {
     this.idUsuarioGestor = idUsuarioGestor;
 }

@OneToMany(fetch=FetchType.LAZY, mappedBy="inspeccion")
 public  List<Diferencia> getDiferencias() {
     return this.diferencias;
 }
 
 public void setDiferencias(List<Diferencia>  diferencias) {
     this.diferencias = diferencias;
 }

@OneToMany(fetch=FetchType.LAZY, mappedBy="inspeccion", cascade={CascadeType.ALL})
 public List<InspeccionDetalle> getInspeccionDetalles() {
     return this.inspeccionDetalles;
 }
 
 public void setInspeccionDetalles(List<InspeccionDetalle> inspeccionDetalles) {
     this.inspeccionDetalles = inspeccionDetalles;
 }




}


